package br.com.localab.relatorio.controlador;

import java.util.Date;
import java.util.List;

import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;

import org.hibernate.Session;

import br.com.localab.fachada.Fachada;
import br.com.localab.usuario.modelo.Usuario;
import br.com.localab.util.autenticar.FacesContextUtil;

@ManagedBean
@SessionScoped
public class RelatorioReservaAMB {
	private Fachada fachada;
	private Session s;
	private List<Usuario> listaUsuarios;
	private String matriculaUsuario;
	private Date dataInicio;
	private Date dataFim;

	public RelatorioReservaAMB() {
		// TODO Auto-generated constructor stub
		s = FacesContextUtil.getRequestSession();
		fachada = new Fachada(s);
		setListaUsuarios(fachada.usuarioListar("ativo",true));
	}
	
	public String gerarRelatorioS(){
		String mensagem = fachada.relatorioGerarA(matriculaUsuario);
		if(!mensagem.equals("")){
			FacesContextUtil.setMessageInformacao("Info", mensagem);
		}
		limpar();
	 return null;
	 
	}
	
	public String gerarRelatorioA(){
		String mensagem = fachada.relatorioGerarA(matriculaUsuario,dataInicio,dataFim);
		if(!mensagem.equals("")){
			FacesContextUtil.setMessageInformacao("Info", mensagem);
		}
		limpar();
	 return null;
	}

	public List<Usuario> getListaUsuarios() {
		return listaUsuarios;
	}

	public void setListaUsuarios(List<Usuario> listaUsuarios) {
		this.listaUsuarios = listaUsuarios;
	}

	public String getMatriculaUsuario() {
		return matriculaUsuario;
	}

	public void setMatriculaUsuario(String matriculaUsuario) {
		this.matriculaUsuario = matriculaUsuario;
	}

	public Date getDataFim() {
		return dataFim;
	}

	public void setDataFim(Date dataFim) {
		this.dataFim = dataFim;
	}

	public Date getDataInicio() {
		return dataInicio;
	}

	public void setDataInicio(Date dataInicio) {
		this.dataInicio = dataInicio;
	}
	
	public void limpar(){
		matriculaUsuario = "";
		dataFim = null;
		dataInicio = null;
	}
	
	
}
